<?php
/**
* C S S
* beinhltet:
* - CSS Bearbeiten und Speichern (Front:cssBearbeiten() / Back:cssSpeichern())
*/

function cssWaehlen() {
		$token = md5(uniqid(rand(), true));
		$_SESSION['token'] = $token;
		$tmp = new Template(templateUrl.'admin_css_waehlen.tpl');
		$tmp->setContent(array('token'      => $token,
							   'newsOrdner' => newsOrdner,
							   'cssData'    => cssAuslesen(true)
							  ));
		echo $tmp->vorlage;
}

function cssWahlSpeichern() {
	global $config;
	if (isset($_POST['cssDateiAendern'])) {
		if( empty($_POST['token']) || $_POST['token'] != $_SESSION['token'] ) die;
		include $config;
		$css = htmlentities($_POST['cssDatei']);
		configDateiSpeichern($smiliePack,$url,$sprache,$editor,$newsProSeite,$newsAufStartseite,$codepressBenutzen,$emailBenachrichtigung,$spamProtection,$css);		
		unset($_SESSION['token']);
	}
}

function validateCssBearbeiten ($einstellen) {
	$einstellen .= ".css";
	$cssRight = false;
	foreach (cssAuslesen(false,true) as $isCss) {
		if ($isCss != $einstellen) continue;
		$cssRight = true;
	}
	if (!$cssRight)  header("Location: index.php?admin=css&meldung=8");
}

function cssBearbeitenAlt($einstellen) {
	global $css;
	$einstellen .= ".css";
	$cssDateiInhalt = "";
	$token = md5(uniqid(rand(), true));
	$_SESSION['token'] = $token;
	$newsCSS = dateiLesen(newsOrdner.'css/news/'.$einstellen);
	foreach ($newsCSS as $line) $cssDateiInhalt = $cssDateiInhalt.$line;
	$tmp = new Template(templateUrl.'admin_css.tpl');
	$tmp->setContent(array('cssDataContent' => $cssDateiInhalt,
						   'cssFile'        => $einstellen,
						   'token'          => $token));
	echo $tmp->vorlage;
}

function cssErstellen($ausTmp="") {
	$token = md5(uniqid(rand(), true));
	$_SESSION['token'] = $token;
	$cssDateiInhalt = "";
	if ($ausTmp == "") {
		$beispiel = dateiLesen(templateUrl.'css.tpl');
		foreach ($beispiel as $line) $cssDateiInhalt .= $line;
	} else {
		$tmp = dateiLesen('../tmp/css.tmp');
		foreach ($tmp as $line) $cssDateiInhalt .= $line;
		// nach reinpacken tmp file löschen
		if (is_file('../tmp/css.tmp')) unlink('../tmp/css.tmp');
	}
	
	$tmp = new Template(templateUrl.'admin_css.tpl');
	$tmp->setContent(array('cssDataContent' => $cssDateiInhalt,
						   'cssFile'        => "neu",
						   'token'          => $token));
	echo $tmp->vorlage;
}

function cssSpeichernAlt() {
	global $config;
	$codepressBenutzen = false;
	if (isset($_POST['cssAendern']) && isset($_POST['newsCSS']) && isset($_POST['cssDatei'])) {
		if( empty($_POST['token']) || $_POST['token'] != $_SESSION['token'] ) die;
		$cssName = "";
		$cssNameAusInhalt = "";
		$cssInhalt = stripcslashes($_POST['newsCSS']);
		$cssNameAuFormular = str_replace(".css","",$_POST['cssDatei']);
		$cssInhaltArray = explode("\n",$cssInhalt);
		// Neuen Namen auslesen 
		foreach ($cssInhaltArray as $line) {
			if (strpos($line,"Name:") === false) continue;
			else {
				$cssNameAusInhalt  = trim(str_replace("Name:","",htmlentities($line)));
				break;
			}
		}		
		if ($cssNameAusInhalt == "") $cssNameAusInhalt = ADMIN_BACKEND_CSSNN; 	
		
		// Neuen Namen mit Bisherigen vergleichen
		if ($cssNameAuFormular == "neu" || $cssNameAuFormular != $cssNameAusInhalt) {
			foreach(cssAuslesen(false) as $cssName) {
				if ($cssName == $cssNameAusInhalt) {
					dateiSpeichern('../tmp/css.tmp',$cssInhalt,"w+");
					if ($cssNameAuFormular == "neu") header("Location: index.php?admin=css&einstellen=tmp&meldung=4");
					else header("Location: index.php?admin=css&einstellen=$cssNameAuFormular&meldung=4");
					die();
				}
			}
			$cssNameAuFormular = $cssNameAusInhalt;
		}
		dateiSpeichern('../css/news/'.$cssNameAuFormular.'.css',$cssInhalt,"w+");
		unset($_SESSION['token']);
	}
}

?>
